def max_subarray_sum(nums):
    """
    寻找数组中子数组和的最大值。

    参数:
        nums (list): 包含正数和负数的整数列表。

    返回:
        int: 任意连续子数组的最大和。
    """
    current_sum = nums[0]
    max_sum = nums[0]

    for num in nums[1:]:
        current_sum = max(num, current_sum + num)

        max_sum = max(max_sum, current_sum)

    return max_sum


if __name__ == "__main__":
    user_input = input("请输入一个整数数组（用逗号分隔，例如 1,-2,3,5,-1）：")
    nums = list(map(int, user_input.split(',')))

    result = max_subarray_sum(nums)

    print(f"输入的数组是 {nums}，最大子数组和是 {result}。")

